/*
 * Copyright (C) 2016 yixun All Rights Reserved.
 * 
 * PayDeposit.java
 */
package com.emm.yixun.common.model;
import java.io.Serializable;

import java.math.BigDecimal;
import com.alibaba.fastjson.annotation.JSONField;
import java.util.Date;

/**
 * [文件名称]<br>
 * PayDeposit.java<br>
 * <br>
 * [文件描述]<br>
 * 客户认筹表 pojo bean<br>
 * <br>
 * [修改记录]<br>
 * 2016-08-08 11:42:05 创建<br>
 * @version 1.00
 */
public class PayDeposit extends CommonModel implements Serializable{
    /**
	 * 序列化UID
	 */
	private static final long serialVersionUID = 1L;

	/**
	 *主键、自动增长
	 */
	private Long id;
	/**
	 *方案类别 0. 按底价  1.按折扣
	 */
	private String floorType;
	/**
	 *
	 */
	private String depositCode;
	/**
	 *外键、关联客户表（cus_tm_customer）
	 */
	private Long customerId;
	/**
	 *项目ID
	 */
	private Long projectId;
	/**
	 *项目编号
	 */
	private String projectCode;
	/**
	 *是否无房认筹:[{key:is_paydeposit,values:[{no:0,alias:NO,remark:否},{no:1,alias:YES,remark:是}]}]
	 */
	private String isPaydeposit;
	/**
	 *外键、关联房间表（project_tr_room）
	 */
	private Long roomId;
	/**
	 *计算面积
	 */
	private BigDecimal calculateArea;
	/**
	 *折前单价
	 */
	private BigDecimal discountPrice;
	/**
	 *折前总价
	 */
	private BigDecimal discountTotalPrice;
	/**
	 *最大浮动范围
	 */
	private BigDecimal floatingRange;
	/**
	 *折扣比例
	 */
	private BigDecimal discountRate;
	/**
	 *认筹金
	 */
	private BigDecimal payDepositAmount;
	/**
	 *认筹起始日期
	 */
	@JSONField (format="yyyy-MM-dd HH:mm:ss")
	private Date startTime;
	/**
	 *认筹终止日期
	 */
	@JSONField (format="yyyy-MM-dd HH:mm:ss")
	private Date endTime;
	/**
	 *当前分配用户ID
	 */
	private Long agentId;
	/**
	 *上个分配用户ID
	 */
	private Long lastAgentId;
	/**
	 *经办日期
	 */
	@JSONField (format="yyyy-MM-dd HH:mm:ss")
	private Date didTime;
	/**
	 *审核状态:[{KEY:audit_status,VALUES:[{NO:0,alias:TOSUBMIT,remark:待审核},{NO:1,alias:AUDIT,remark:审核中},{NO:2,alias:REJECT,remark:审核不通过},{NO:3,alias:SUCCESS,remark:审核通过}]}]
	 */
	private String auditStatus;
	/**
	 *审核意见
	 */
	private String auditOpinion;
	/**
	 *外键、关联商户信息表（mer_tm_merchant）
	 */
	private Long merchantId;
	/**
	 *引用部门编号，关联sys_tm_department表,用作部门数据权限控制
	 */
	private String userCode;
	/**
	 *引用房产项目编码，关联pro_tm_project表,用作项目数据权限控制
	 */
	private String accessCode;
	/**
	 *备注
	 */
	private String remark;
	/**
	 *创建人ID,关联用户表
	 */
	private Long createUserId;
	/**
	 *创建时间格式：yyyy-MM-dd HH:mm:ss
	 */
	@JSONField (format="yyyy-MM-dd HH:mm:ss")
	private Date createTime;
	/**
	 *修改人ID,关联用户表
	 */
	private Long updateUserId;
	/**
	 *修改时间格式：yyyy-MM-dd HH:mm:ss
	 */
	@JSONField (format="yyyy-MM-dd HH:mm:ss")
	private Date updateTime;
	/**
	 *是否删除:[{key:del_flag,values:[{no:0,alias:UNDEL,remark:否},{no:1,alias:DEL,remark:是}]}]
	 */
	private String delFlag;
	/**
	 *流程实列ID
	 */
	private String procInstId;
	/**
	 *业务状态:[{key:business_status,values:[{no:1,alias:PAYDEPOSIT,remark:认筹},{no:2,alias:PAYDEPOSIT_PASS_SUBSCRIBE,remark:认筹转认购},{no:3,alias:PAYDEPOSIT_PASS_SIGNED,remark:认筹转签约},{no:4,alias:RENAMED,remark:已更名},{no:5,alias:REFUNDPAYDEPOSIT,remark:退认筹}]}]
	 */
	private String businessStatus;
	/**
	 *审核日期
	 */
	@JSONField (format="yyyy-MM-dd HH:mm:ss")
	private Date checkDate;
	/**
	 *
	 */
	private BigDecimal deductibleAmount;
	
	private String payerName;

	public String getPayerName() {
		return payerName;
	}

	public void setPayerName(String payerName) {
		this.payerName = payerName;
	}

	/**
	 *设置 :主键、自动增长
	 */
	public void setId(Long id) {
		this.id = id;
	}

	/**	 
	 *获取 :主键、自动增长
	 */
	public Long getId() {
		return this.id;
	}

	/**	 
	 *设置 :方案类别 0. 按底价  1.按折扣
	 */
	public void setFloorType(String floorType) {
		this.floorType = floorType;
	}

	/**	 
	 *获取 :方案类别 0. 按底价  1.按折扣
	 */
	public String getFloorType() {
		return this.floorType;
	}

	/**	 
	 *设置 :
	 */
	public void setDepositCode(String depositCode) {
		this.depositCode = depositCode;
	}

	/**	 
	 *获取 :
	 */
	public String getDepositCode() {
		return this.depositCode;
	}

	/**	 
	 *设置 :外键、关联客户表（cus_tm_customer）
	 */
	public void setCustomerId(Long customerId) {
		this.customerId = customerId;
	}

	/**	 
	 *获取 :外键、关联客户表（cus_tm_customer）
	 */
	public Long getCustomerId() {
		return this.customerId;
	}

	/**	 
	 *设置 :项目ID
	 */
	public void setProjectId(Long projectId) {
		this.projectId = projectId;
	}

	/**	 
	 *获取 :项目ID
	 */
	public Long getProjectId() {
		return this.projectId;
	}

	/**	 
	 *设置 :项目编号
	 */
	public void setProjectCode(String projectCode) {
		this.projectCode = projectCode;
	}

	/**	 
	 *获取 :项目编号
	 */
	public String getProjectCode() {
		return this.projectCode;
	}

	/**	 
	 *设置 :是否无房认筹:[{key:is_paydeposit,values:[{no:0,alias:NO,remark:否},{no:1,alias:YES,remark:是}]}]
	 */
	public void setIsPaydeposit(String isPaydeposit) {
		this.isPaydeposit = isPaydeposit;
	}

	/**	 
	 *获取 :是否无房认筹:[{key:is_paydeposit,values:[{no:0,alias:NO,remark:否},{no:1,alias:YES,remark:是}]}]
	 */
	public String getIsPaydeposit() {
		return this.isPaydeposit;
	}

	/**	 
	 *设置 :外键、关联房间表（project_tr_room）
	 */
	public void setRoomId(Long roomId) {
		this.roomId = roomId;
	}

	/**	 
	 *获取 :外键、关联房间表（project_tr_room）
	 */
	public Long getRoomId() {
		return this.roomId;
	}

	/**	 
	 *设置 :计算面积
	 */
	public void setCalculateArea(BigDecimal calculateArea) {
		this.calculateArea = calculateArea;
	}

	/**	 
	 *获取 :计算面积
	 */
	public BigDecimal getCalculateArea() {
		return this.calculateArea;
	}

	/**	 
	 *设置 :折前单价
	 */
	public void setDiscountPrice(BigDecimal discountPrice) {
		this.discountPrice = discountPrice;
	}

	/**	 
	 *获取 :折前单价
	 */
	public BigDecimal getDiscountPrice() {
		return this.discountPrice;
	}

	/**	 
	 *设置 :折前总价
	 */
	public void setDiscountTotalPrice(BigDecimal discountTotalPrice) {
		this.discountTotalPrice = discountTotalPrice;
	}

	/**	 
	 *获取 :折前总价
	 */
	public BigDecimal getDiscountTotalPrice() {
		return this.discountTotalPrice;
	}

	/**	 
	 *设置 :最大浮动范围
	 */
	public void setFloatingRange(BigDecimal floatingRange) {
		this.floatingRange = floatingRange;
	}

	/**	 
	 *获取 :最大浮动范围
	 */
	public BigDecimal getFloatingRange() {
		return this.floatingRange;
	}

	/**	 
	 *设置 :折扣比例
	 */
	public void setDiscountRate(BigDecimal discountRate) {
		this.discountRate = discountRate;
	}

	/**	 
	 *获取 :折扣比例
	 */
	public BigDecimal getDiscountRate() {
		return this.discountRate;
	}

	/**	 
	 *设置 :认筹金
	 */
	public void setPayDepositAmount(BigDecimal payDepositAmount) {
		this.payDepositAmount = payDepositAmount;
	}

	/**	 
	 *获取 :认筹金
	 */
	public BigDecimal getPayDepositAmount() {
		return this.payDepositAmount;
	}

	/**	 
	 *设置 :认筹起始日期
	 */
	public void setStartTime(Date startTime) {
		this.startTime = startTime;
	}

	/**	 
	 *获取 :认筹起始日期
	 */
	public Date getStartTime() {
		return this.startTime;
	}

	/**	 
	 *设置 :认筹终止日期
	 */
	public void setEndTime(Date endTime) {
		this.endTime = endTime;
	}

	/**	 
	 *获取 :认筹终止日期
	 */
	public Date getEndTime() {
		return this.endTime;
	}

	/**	 
	 *设置 :当前分配用户ID
	 */
	public void setAgentId(Long agentId) {
		this.agentId = agentId;
	}

	/**	 
	 *获取 :当前分配用户ID
	 */
	public Long getAgentId() {
		return this.agentId;
	}

	/**	 
	 *设置 :上个分配用户ID
	 */
	public void setLastAgentId(Long lastAgentId) {
		this.lastAgentId = lastAgentId;
	}

	/**	 
	 *获取 :上个分配用户ID
	 */
	public Long getLastAgentId() {
		return this.lastAgentId;
	}

	/**	 
	 *设置 :经办日期
	 */
	public void setDidTime(Date didTime) {
		this.didTime = didTime;
	}

	/**	 
	 *获取 :经办日期
	 */
	public Date getDidTime() {
		return this.didTime;
	}

	/**	 
	 *设置 :审核状态:[{KEY:audit_status,VALUES:[{NO:0,alias:TOSUBMIT,remark:待审核},{NO:1,alias:AUDIT,remark:审核中},{NO:2,alias:REJECT,remark:审核不通过},{NO:3,alias:SUCCESS,remark:审核通过}]}]
	 */
	public void setAuditStatus(String auditStatus) {
		this.auditStatus = auditStatus;
	}

	/**	 
	 *获取 :审核状态:[{KEY:audit_status,VALUES:[{NO:0,alias:TOSUBMIT,remark:待审核},{NO:1,alias:AUDIT,remark:审核中},{NO:2,alias:REJECT,remark:审核不通过},{NO:3,alias:SUCCESS,remark:审核通过}]}]
	 */
	public String getAuditStatus() {
		return this.auditStatus;
	}

	/**	 
	 *设置 :审核意见
	 */
	public void setAuditOpinion(String auditOpinion) {
		this.auditOpinion = auditOpinion;
	}

	/**	 
	 *获取 :审核意见
	 */
	public String getAuditOpinion() {
		return this.auditOpinion;
	}

	/**	 
	 *设置 :外键、关联商户信息表（mer_tm_merchant）
	 */
	public void setMerchantId(Long merchantId) {
		this.merchantId = merchantId;
	}

	/**	 
	 *获取 :外键、关联商户信息表（mer_tm_merchant）
	 */
	public Long getMerchantId() {
		return this.merchantId;
	}

	/**	 
	 *设置 :引用部门编号，关联sys_tm_department表,用作部门数据权限控制
	 */
	public void setUserCode(String userCode) {
		this.userCode = userCode;
	}

	/**	 
	 *获取 :引用部门编号，关联sys_tm_department表,用作部门数据权限控制
	 */
	public String getUserCode() {
		return this.userCode;
	}

	/**	 
	 *设置 :引用房产项目编码，关联pro_tm_project表,用作项目数据权限控制
	 */
	public void setAccessCode(String accessCode) {
		this.accessCode = accessCode;
	}

	/**	 
	 *获取 :引用房产项目编码，关联pro_tm_project表,用作项目数据权限控制
	 */
	public String getAccessCode() {
		return this.accessCode;
	}

	/**	 
	 *设置 :备注
	 */
	public void setRemark(String remark) {
		this.remark = remark;
	}

	/**	 
	 *获取 :备注
	 */
	public String getRemark() {
		return this.remark;
	}

	/**	 
	 *设置 :创建人ID,关联用户表
	 */
	public void setCreateUserId(Long createUserId) {
		this.createUserId = createUserId;
	}

	/**	 
	 *获取 :创建人ID,关联用户表
	 */
	public Long getCreateUserId() {
		return this.createUserId;
	}

	/**	 
	 *设置 :创建时间格式：yyyy-MM-dd HH:mm:ss
	 */
	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	/**	 
	 *获取 :创建时间格式：yyyy-MM-dd HH:mm:ss
	 */
	public Date getCreateTime() {
		return this.createTime;
	}

	/**	 
	 *设置 :修改人ID,关联用户表
	 */
	public void setUpdateUserId(Long updateUserId) {
		this.updateUserId = updateUserId;
	}

	/**	 
	 *获取 :修改人ID,关联用户表
	 */
	public Long getUpdateUserId() {
		return this.updateUserId;
	}

	/**	 
	 *设置 :修改时间格式：yyyy-MM-dd HH:mm:ss
	 */
	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}

	/**	 
	 *获取 :修改时间格式：yyyy-MM-dd HH:mm:ss
	 */
	public Date getUpdateTime() {
		return this.updateTime;
	}

	/**	 
	 *设置 :是否删除:[{key:del_flag,values:[{no:0,alias:UNDEL,remark:否},{no:1,alias:DEL,remark:是}]}]
	 */
	public void setDelFlag(String delFlag) {
		this.delFlag = delFlag;
	}

	/**	 
	 *获取 :是否删除:[{key:del_flag,values:[{no:0,alias:UNDEL,remark:否},{no:1,alias:DEL,remark:是}]}]
	 */
	public String getDelFlag() {
		return this.delFlag;
	}

	/**	 
	 *设置 :流程实列ID
	 */
	public void setProcInstId(String procInstId) {
		this.procInstId = procInstId;
	}

	/**	 
	 *获取 :流程实列ID
	 */
	public String getProcInstId() {
		return this.procInstId;
	}

	/**	 
	 *设置 :业务状态:[{key:business_status,values:[{no:1,alias:PAYDEPOSIT,remark:认筹},{no:2,alias:PAYDEPOSIT_PASS_SUBSCRIBE,remark:认筹转认购},{no:3,alias:PAYDEPOSIT_PASS_SIGNED,remark:认筹转签约},{no:4,alias:RENAMED,remark:已更名},{no:5,alias:REFUNDPAYDEPOSIT,remark:退认筹}]}]
	 */
	public void setBusinessStatus(String businessStatus) {
		this.businessStatus = businessStatus;
	}

	/**	 
	 *获取 :业务状态:[{key:business_status,values:[{no:1,alias:PAYDEPOSIT,remark:认筹},{no:2,alias:PAYDEPOSIT_PASS_SUBSCRIBE,remark:认筹转认购},{no:3,alias:PAYDEPOSIT_PASS_SIGNED,remark:认筹转签约},{no:4,alias:RENAMED,remark:已更名},{no:5,alias:REFUNDPAYDEPOSIT,remark:退认筹}]}]
	 */
	public String getBusinessStatus() {
		return this.businessStatus;
	}

	/**	 
	 *设置 :审核日期
	 */
	public void setCheckDate(Date checkDate) {
		this.checkDate = checkDate;
	}

	/**	 
	 *获取 :审核日期
	 */
	public Date getCheckDate() {
		return this.checkDate;
	}

	/**	 
	 *设置 :
	 */
	public void setDeductibleAmount(BigDecimal deductibleAmount) {
		this.deductibleAmount = deductibleAmount;
	}

	/**	 
	 *获取 :
	 */
	public BigDecimal getDeductibleAmount() {
		return this.deductibleAmount;
	}

}
